/**
 * Copyright &copy; 2012-2017 <a href="https://vivo.com">vivo</a> All rights reserved.
 */
package com.vivo.fx.retail.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import javax.validation.constraints.NotNull;
import com.thinkgem.jeesite.common.utils.excel.annotation.ExcelField;

import com.thinkgem.jeesite.common.persistence.DataEntity;

/**
 * 发货单Entity
 * @author jyangye
 * @version 2018-01-16
 */
public class FxDeaDispatchorder extends DataEntity<FxDeaDispatchorder> {
	
	private static final long serialVersionUID = 1L;
	private String dispatchorderid;		// dispatchorderid
	private String dispatchbookingid;		// dispatchbookingid
	private String userid;		// userid
	private String ordercode;		// ordercode
	private Date orderdate;		// orderdate
	private Integer deliverydealerid;		// deliverydealerid
	private Integer deliverydealerrelationid;		// deliverydealerrelationid
	private Integer deliverywarehouseid;		// deliverywarehouseid
	private Integer receivedealerid;		// receivedealerid
	private Integer receivedealerrelationid;		// receivedealerrelationid
	private Integer receivewarehouseid;		// receivewarehouseid
	private String handleremployeeid;		// handleremployeeid
	private String checkeremployeeid;		// checkeremployeeid
	private String checkstate;		// checkstate
	private Date makedate;		// makedate
	private Date pastduetime;		// pastduetime
	private String thisverifystate;		// thisverifystate
	private Date checkpasseddate;		// checkpasseddate
	private Integer warescount;		// warescount
	private Integer orderstate;		// orderstate
	private String remark;		// remark
	private Date updateflag;		// updateflag
	private String upstoreinhouseresult;		// upstoreinhouseresult
	private String upstoreinhouseresultmessage;		// upstoreinhouseresultmessage
	private String logisticsid;		// logisticsid
	private String logisticscode;		// logisticscode
	private Double summoney;		// summoney
	private String logisticsremark;		// logisticsremark
	private Integer deliveryaccountid;		// deliveryaccountid
	private Integer receiveaccountid;		// receiveaccountid
	private String ispartdispatch;		// ispartdispatch
	private String lockinguserid;		// lockinguserid
	private Date lockingdate;		// lockingdate
	private String erpordercode;		// erpordercode
	private Date beginMakedate;		// 开始 makedate
	private Date endMakedate;		// 结束 makedate
	
	public FxDeaDispatchorder() {
		super();
	}

	public FxDeaDispatchorder(String id){
		super(id);
	}

	@Length(min=1, max=32, message="dispatchorderid长度必须介于 1 和 32 之间")
	@ExcelField(title="dispatchorderid", align=2, sort=10)
	public String getDispatchorderid() {
		return dispatchorderid;
	}

	public void setDispatchorderid(String dispatchorderid) {
		this.dispatchorderid = dispatchorderid;
	}
	
	@Length(min=0, max=4000, message="dispatchbookingid长度必须介于 0 和 4000 之间")
	@ExcelField(title="dispatchbookingid", align=2, sort=20)
	public String getDispatchbookingid() {
		return dispatchbookingid;
	}

	public void setDispatchbookingid(String dispatchbookingid) {
		this.dispatchbookingid = dispatchbookingid;
	}
	
	@Length(min=1, max=32, message="userid长度必须介于 1 和 32 之间")
	@ExcelField(title="userid", align=2, sort=30)
	public String getUserid() {
		return userid;
	}

	public void setUserid(String userid) {
		this.userid = userid;
	}
	
	@Length(min=1, max=30, message="ordercode长度必须介于 1 和 30 之间")
	@ExcelField(title="ordercode", align=2, sort=40)
	public String getOrdercode() {
		return ordercode;
	}

	public void setOrdercode(String ordercode) {
		this.ordercode = ordercode;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@NotNull(message="orderdate不能为空")
	@ExcelField(title="orderdate", align=2, sort=50)
	public Date getOrderdate() {
		return orderdate;
	}

	public void setOrderdate(Date orderdate) {
		this.orderdate = orderdate;
	}
	
	@ExcelField(title="deliverydealerid", align=2, sort=60)
	public Integer getDeliverydealerid() {
		return deliverydealerid;
	}

	public void setDeliverydealerid(Integer deliverydealerid) {
		this.deliverydealerid = deliverydealerid;
	}
	
	@ExcelField(title="deliverydealerrelationid", align=2, sort=70)
	public Integer getDeliverydealerrelationid() {
		return deliverydealerrelationid;
	}

	public void setDeliverydealerrelationid(Integer deliverydealerrelationid) {
		this.deliverydealerrelationid = deliverydealerrelationid;
	}
	
	@ExcelField(title="deliverywarehouseid", align=2, sort=80)
	public Integer getDeliverywarehouseid() {
		return deliverywarehouseid;
	}

	public void setDeliverywarehouseid(Integer deliverywarehouseid) {
		this.deliverywarehouseid = deliverywarehouseid;
	}
	
	@ExcelField(title="receivedealerid", align=2, sort=90)
	public Integer getReceivedealerid() {
		return receivedealerid;
	}

	public void setReceivedealerid(Integer receivedealerid) {
		this.receivedealerid = receivedealerid;
	}
	
	@ExcelField(title="receivedealerrelationid", align=2, sort=100)
	public Integer getReceivedealerrelationid() {
		return receivedealerrelationid;
	}

	public void setReceivedealerrelationid(Integer receivedealerrelationid) {
		this.receivedealerrelationid = receivedealerrelationid;
	}
	
	@ExcelField(title="receivewarehouseid", align=2, sort=110)
	public Integer getReceivewarehouseid() {
		return receivewarehouseid;
	}

	public void setReceivewarehouseid(Integer receivewarehouseid) {
		this.receivewarehouseid = receivewarehouseid;
	}
	
	@Length(min=0, max=32, message="handleremployeeid长度必须介于 0 和 32 之间")
	@ExcelField(title="handleremployeeid", align=2, sort=120)
	public String getHandleremployeeid() {
		return handleremployeeid;
	}

	public void setHandleremployeeid(String handleremployeeid) {
		this.handleremployeeid = handleremployeeid;
	}
	
	@Length(min=0, max=32, message="checkeremployeeid长度必须介于 0 和 32 之间")
	@ExcelField(title="checkeremployeeid", align=2, sort=130)
	public String getCheckeremployeeid() {
		return checkeremployeeid;
	}

	public void setCheckeremployeeid(String checkeremployeeid) {
		this.checkeremployeeid = checkeremployeeid;
	}
	
	@Length(min=0, max=1, message="checkstate长度必须介于 0 和 1 之间")
	@ExcelField(title="checkstate", align=2, sort=140)
	public String getCheckstate() {
		return checkstate;
	}

	public void setCheckstate(String checkstate) {
		this.checkstate = checkstate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@NotNull(message="makedate不能为空")
	@ExcelField(title="makedate", align=2, sort=150)
	public Date getMakedate() {
		return makedate;
	}

	public void setMakedate(Date makedate) {
		this.makedate = makedate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="pastduetime", align=2, sort=160)
	public Date getPastduetime() {
		return pastduetime;
	}

	public void setPastduetime(Date pastduetime) {
		this.pastduetime = pastduetime;
	}
	
	@Length(min=1, max=1, message="thisverifystate长度必须介于 1 和 1 之间")
	@ExcelField(title="thisverifystate", align=2, sort=170)
	public String getThisverifystate() {
		return thisverifystate;
	}

	public void setThisverifystate(String thisverifystate) {
		this.thisverifystate = thisverifystate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="checkpasseddate", align=2, sort=180)
	public Date getCheckpasseddate() {
		return checkpasseddate;
	}

	public void setCheckpasseddate(Date checkpasseddate) {
		this.checkpasseddate = checkpasseddate;
	}
	
	@ExcelField(title="warescount", align=2, sort=190)
	public Integer getWarescount() {
		return warescount;
	}

	public void setWarescount(Integer warescount) {
		this.warescount = warescount;
	}
	
	@NotNull(message="orderstate不能为空")
	@ExcelField(title="orderstate", align=2, sort=200)
	public Integer getOrderstate() {
		return orderstate;
	}

	public void setOrderstate(Integer orderstate) {
		this.orderstate = orderstate;
	}
	
	@Length(min=0, max=3200, message="remark长度必须介于 0 和 3200 之间")
	@ExcelField(title="remark", align=2, sort=210)
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@NotNull(message="updateflag不能为空")
	@ExcelField(title="updateflag", align=2, sort=220)
	public Date getUpdateflag() {
		return updateflag;
	}

	public void setUpdateflag(Date updateflag) {
		this.updateflag = updateflag;
	}
	
	@Length(min=0, max=1, message="upstoreinhouseresult长度必须介于 0 和 1 之间")
	@ExcelField(title="upstoreinhouseresult", align=2, sort=230)
	public String getUpstoreinhouseresult() {
		return upstoreinhouseresult;
	}

	public void setUpstoreinhouseresult(String upstoreinhouseresult) {
		this.upstoreinhouseresult = upstoreinhouseresult;
	}
	
	@Length(min=0, max=5000, message="upstoreinhouseresultmessage长度必须介于 0 和 5000 之间")
	@ExcelField(title="upstoreinhouseresultmessage", align=2, sort=240)
	public String getUpstoreinhouseresultmessage() {
		return upstoreinhouseresultmessage;
	}

	public void setUpstoreinhouseresultmessage(String upstoreinhouseresultmessage) {
		this.upstoreinhouseresultmessage = upstoreinhouseresultmessage;
	}
	
	@Length(min=0, max=32, message="logisticsid长度必须介于 0 和 32 之间")
	@ExcelField(title="logisticsid", align=2, sort=250)
	public String getLogisticsid() {
		return logisticsid;
	}

	public void setLogisticsid(String logisticsid) {
		this.logisticsid = logisticsid;
	}
	
	@Length(min=0, max=150, message="logisticscode长度必须介于 0 和 150 之间")
	@ExcelField(title="logisticscode", align=2, sort=260)
	public String getLogisticscode() {
		return logisticscode;
	}

	public void setLogisticscode(String logisticscode) {
		this.logisticscode = logisticscode;
	}
	
	@ExcelField(title="summoney", align=2, sort=270)
	public Double getSummoney() {
		return summoney;
	}

	public void setSummoney(Double summoney) {
		this.summoney = summoney;
	}
	
	@Length(min=0, max=3200, message="logisticsremark长度必须介于 0 和 3200 之间")
	@ExcelField(title="logisticsremark", align=2, sort=280)
	public String getLogisticsremark() {
		return logisticsremark;
	}

	public void setLogisticsremark(String logisticsremark) {
		this.logisticsremark = logisticsremark;
	}
	
	@ExcelField(title="deliveryaccountid", align=2, sort=290)
	public Integer getDeliveryaccountid() {
		return deliveryaccountid;
	}

	public void setDeliveryaccountid(Integer deliveryaccountid) {
		this.deliveryaccountid = deliveryaccountid;
	}
	
	@ExcelField(title="receiveaccountid", align=2, sort=300)
	public Integer getReceiveaccountid() {
		return receiveaccountid;
	}

	public void setReceiveaccountid(Integer receiveaccountid) {
		this.receiveaccountid = receiveaccountid;
	}
	
	@Length(min=0, max=1, message="ispartdispatch长度必须介于 0 和 1 之间")
	@ExcelField(title="ispartdispatch", align=2, sort=310)
	public String getIspartdispatch() {
		return ispartdispatch;
	}

	public void setIspartdispatch(String ispartdispatch) {
		this.ispartdispatch = ispartdispatch;
	}
	
	@Length(min=0, max=32, message="lockinguserid长度必须介于 0 和 32 之间")
	@ExcelField(title="lockinguserid", align=2, sort=320)
	public String getLockinguserid() {
		return lockinguserid;
	}

	public void setLockinguserid(String lockinguserid) {
		this.lockinguserid = lockinguserid;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="lockingdate", align=2, sort=330)
	public Date getLockingdate() {
		return lockingdate;
	}

	public void setLockingdate(Date lockingdate) {
		this.lockingdate = lockingdate;
	}
	
	@Length(min=0, max=100, message="erpordercode长度必须介于 0 和 100 之间")
	@ExcelField(title="erpordercode", align=2, sort=340)
	public String getErpordercode() {
		return erpordercode;
	}

	public void setErpordercode(String erpordercode) {
		this.erpordercode = erpordercode;
	}
	
	public Date getBeginMakedate() {
		return beginMakedate;
	}

	public void setBeginMakedate(Date beginMakedate) {
		this.beginMakedate = beginMakedate;
	}
	
	public Date getEndMakedate() {
		return endMakedate;
	}

	public void setEndMakedate(Date endMakedate) {
		this.endMakedate = endMakedate;
	}
		
}